Various optical readers and optical scanning systems have been developed heretofore for reading bar code symbols appearing on a label or on the surface of an article. The bar code symbol itself is a coded pattern of indicia comprised of a series of bars of various widths spaced apart from one another to bound spaces of various widths, the bars and spaces having different light reflecting characteristics. The readers and scanning systems electro-optically transform the graphic indicia into electrical signals, which are decoded into alphanumerical characters that are intended to be descriptive of the article or some characteristic thereof. Such characters are typically represented in digital form and utilized as an input to a data processing system for applications in point-of-sale processing, inventory control, and the like. Scanning systems of this general type have been disclosed, for example, in U.S. Pat. Nos. 4,251,798; 4,369,361; 4,387,297; 4,409,470; 4,760,248; and 4,896,026, all of which have been assigned to the same assignee as the instant application.
As disclosed in some of the above patents, one embodiment of such a scanning system resides, inter alia, in a hand-held, portable laser scanning head supported by a user, which is configured to allow the user to aim the head, and more particularly, the light beam, at a target and a symbol to be read.
The light source in a laser scanner is typically a gas laser or semiconductor laser. The use of a semiconductor devices such as a laser diode as the light source in scanning systems is especially desirable because of their small size, low cost and low power requirements. The laser beam is optically modified, typically by a condenser lens, to form a waist-shaped beam in which the width of the beam diminishes with distance until reaching a minimum, or waist, and then increases. The beam is focused so that a desired spot size is achieved at the target distance, typically so that the waist is located at the target distance. It is preferred that the spot size at the target distance be approximately the same as the minimum width between regions of different light reflectivity, i.e., the bars and spaces of the symbol.
Bar code symbols are formed from bars or elements that are typically rectangular in shape with a variety of possible widths. The specific arrangement of elements defines the character represented according to a set of rules and definitions specified by the code or "symbology" used. The relative size of the bars and spaces is determined by the type of coding used, as is the actual size of the bars and spaces. The number of characters per inch represented by the bar code symbol is referred to as the density of the symbol. To encode a desired sequence of characters, groups of elements are concatenated together to form the complete bar code symbol, with each character of the message being represented by its own corresponding group of elements. In some symbologies a unique "start" and "stop" character is used to indicate where the bar code begins and ends. A number of different bar code symbologies exist. These symbologies include, e.g., UPC/EAN, Code 39, Code 128, Codabar, and Interleaved 2 of 5, etc.
In order to increase the amount of data that can be represented or stored on a given amount of surface area, several new bar code symbologies have recently been developed. One of these new code standards, Code 49, introduces a "two-dimensional" concept by stacking rows of characters vertically instead of extending the bars horizontally. That is, there are several rows of bar and space patterns, instead of only one row. The structure of Code 49 is described in U.S. Pat. No. 4,794,239, which is hereby incorporated by reference.
In the scanning systems known in the art, the light beam is directed by a lens or similar optical components along a light path toward a target that includes a bar code symbol on the surface. The scanning functions by repetitively scanning the light beam in a line or series of lines across the symbol. The scanning component may either sweep the beam spot across the symbol and trace a scan line across and past the symbol, or scan the field of view of the scanner, or do both. Scanning systems also include a sensor or photodetector which functions to detect light reflected from the symbol. The photo-detector is therefore positioned in the scanner or in an optical path in which it has a field of view which extends across and slightly past the symbol. A portion of the reflected light which is reflected off the symbol is detected and converted into an electrical signal, and electronic circuitry or software decodes the electrical signal into a digital representation of the data represented by the symbol that has been scanned. For example, the analog electrical signal from the photodetector may typically be converted into a pulse width modulated digital signal, with the widths corresponding to the physical widths of the bars and spaces. Such a signal is then decoded according to the specific symbology into a binary representation of the data encoded in the symbol, and to the alphanumeric characters so represented.
The decoding process in known scanning systems usually work in the following way. The decoder receives the pulse width modulated digital signal from the scanner, and an algorithm implemented in software attempts to decode the scan. If the start and stop characters and the characters between them in the scan were decoded successfully and completely, the decoding process terminates and an indicator of a successful read (such as a green light and/or an audible beep) is provided to the user. Otherwise, the decoder receives the next scan, performs another decode attempt on that scan, and so on, until a completely decoded scan is achieved or no more scans are available.
Such a signal is then decoded according to the specific symbology into a binary representation of the data encoded in the symbol, and to the alphanumeric characters so represented.
Bar code symbols are printed in varying densities. High density symbols (line widths &lt;5 mil) are, for example, used for small parts (e.g., integrated circuits) and for symbols with high information density. Low density symbols (line widths .gtoreq.50 mil) are, for example, used for coding packages (e.g., UPC/EAN symbols) and containers in warehouses. As it is generally preferred that the beam scanned across the bar code symbol have a width comparable to that of the minimum width between regions of different light reflectivity (e.g., the minimum width of a bar element), different beam widths are needed to read different density bar codes. Furthermore, bar codes of the same density can be located at varying distances from the laser scanning head, and thus there is a need to vary the beam spot size at each of many different ranges from the scanning head.
Conventional laser scanners have a condenser lens that focuses the laser diode so that the spot size is correct at the range at which the bar code reader is expected to operate. With such fixed focus systems, there is typically a "dead zone" in front of the scanner in which the spot size is too large for scanning to occur. Also, such scanners must be focused at the factory by adjusting the condenser lens along the optical axis while observing the spot size and then permanently setting the position of the lens at the position that achieves the desired size. This step is a relatively costly one, adding to the cost of manufacturing the laser scanner.
Various proposals have been made for improvements over these fixed focus scanners. A prior filed U.S. patent application of Bergstein, U.S. Ser. No. 07/503,374, discloses an afocal optical system in which the laser beam is collimated so that its width (or spot size) remains approximately constant over a wide range (i.e., so as to reduce as much as possible the waist shape of the beam). Krichever et al. U.S. Pat. No. 4,808,804 shows moving different condenser lens elements into and out of the optical path of the laser beam, and moving the laser diode along the optical axis, to vary the working distance and/or the spot size of the beam. Gabeler U.S. Pat. No. 4,920,255 shows a bar code reading system in which the range of the surface bearing the bar code is detected using an ultrasonic ranging system, and the detected range is used to prescribe the setting of the optics focusing a laser beam on the bar code (the output signal from the ultrasonic ranging system drives a stepper motor in the laser focusing optics). Drucker U.S. Pat. No. 4,831,275 discloses a variety of means for optically modifying the light reflected from the bar code symbol, to vary the distance at which the symbol is in focus on the photodetector within a bar code reader; the techniques taught include altering the shape of a lens, moving an aperture in the optical path, moving a mirror (or a fiber optic cable), and providing an array of sensors, each effectively focused at a different range. U.S. Pat. No. 4,333,006 discloses the use of a plurality of varying focal length holograms generated by a rotating disk to focus at differing overlapping distance ranges.